\chapter{Module Structure}\label{module-structure}

Let us assume that the novice EnergyPlus developer wishes to model a new HVAC component called \emph{NewHVACComponent}.~ Right at the start there is a choice to make: whether to insert the new model into an existing module or to create an entirely new EnergyPlus component simulation model.~ Creating a new module is the easier option to explain, implement and test. We will discuss this option in this document.~ The discussion should also impart enough information to allow a new developer to insert a model into an existing EnergyPlus module if that option is chosen.

If you intend that the module will become part of the distributed EnergyPlus, follow the guidance in the Programming Standard document.~ Even if you don't intend that your module will become part of EnergyPlus -- but you might want some advice from one of the core development team, follow the guidance in the Programming Standard.
